import type { App } from "vue";
import { useUserInfoStore } from "@/stores/userInfo";

export default function registerPermissionDirective(app: App) {
  app.directive("permission", (el, binding) => {
    const userInfo = useUserInfoStore();
    /*
      el 绑定指令目标元素
      binding 对象，包含指令的一些信息（指令名称，表达式，表达式的值等）
        binding.value 表达式的值
    */
    if (!userInfo.buttons.includes(binding.value)) {
      // el.style.display = "none"; // 隐藏自己
      el.remove(); // 删除自己
    }
  });
}
